O Presente relatório busca responder uma pergunta que está sendo muito discutida na internet por pesquisadores do mundo inteiro, “Como isso afeta o Grêmio?” A pergunta repercutiu em 2022, durante o Gre-Nal 435, quando o Internacional de Porto Alegre, o time Rival do Grêmio, declarou no Twitter: #INTxGRE | 2T | ⏱️ 50’ - AFETOU O GRÊMIO! 🔥 Segundo o GloboEsporte, a frase tem origem em um vídeo produzido por um torcedor gremista que explicaria a relação da morte do príncipe Phillip, marido da rainha Elizabeth II, do Reino Unido, em abril de 2021, com o clube. O vídeo se encontra disponível no link: https://www.youtube.com/watch?v=d45kkL0EwSs
O meme se espalhou pela internet, chegando a ser usado por
influencers em redes sociais e Streamings de Futebol na Twitch, ele
tomou forma com o personagem Walter White de Breaking Bad, como na
imagem abaixo:
Desde então a pergunta que a internet faz é: Como isso afeta o Grêmio? Vou tentar ver algumas estatísticas do clube, como Ranking e Pontos na CBF e no Brasileirão e tentar encontrar algumas relações com acontecimentos importantes do nosso cotidiano. Então esse é o Mas afeta o Grêmio?
Os pacotes a serem usados são: plotly Para criação de gráficos.
stringr Para trabalhar com as strings presentes no dataset.
tidyr Para auxiliar na limpeza e organização das tabelas de dados.
Os primeiros dados referentes a Ranking CBF, Brasileirão e Títulos foram retirados da Wikipedia e revisados no Globoesporte referente a cada ano. Já o preço do time foi pego do site transfermarkt. e está em Euro.
dadosGremio <- read.csv("data/estGremio.csv")
head(dadosGremio)
## X PontosCBF PontosBr RankingCBF TitulosNoAno ValorDoTimeEuroMi
## 1 2010 1000 63 4 1 1.16
## 2 2011 1500 48 12 0 1.14
## 3 2012 2208 71 4 0 1.12
## 4 2013 14460 65 5 0 1.31
## 5 2014 15286 61 1 0 1.14
## 6 2015 13992 68 4 0 1.21
# Onde x é o ano
Irei excluir 2010 e 2011 por não termos os rankings da CBF.
dadosGremio <- dadosGremio[3:13, ]
Pontos do Grêmio no Brasileirão
fig <- plot_ly(dadosGremio, x = ~X, y = dadosGremio$PontosBr, name = 'trace 0', type = 'scatter', mode = 'lines')
fig <- fig %>% layout(title = "Pontos do Grêmio no Brasileirão",
xaxis = list(title = "Anos"),
yaxis = list (title = "Pontos"))
fig
Pontos do Grêmio Normalizados no Brasileirão
score_p = scale(dadosGremio$PontosBr, center = T)
fig <- plot_ly(dadosGremio, x = ~X, y = score_p, name = 'trace 0', type = 'scatter', mode = 'lines')
fig <- fig %>% layout(title = "Pontos Normalizados do Grêmio no Brasileirão",
xaxis = list(title = "Anos"),
yaxis = list (title = "Tendencia"))
fig
Pontos do Grêmio no Ranking CBF
fig <- plot_ly(dadosGremio, x = ~X, y = dadosGremio$PontosCBF, name = 'trace 0', type = 'scatter', mode = 'lines')
fig <- fig %>% layout(title = "Pontos do Grêmio no Ranking CBF",
xaxis = list(title = "Anos"),
yaxis = list (title = "Pontos"))
fig
Pontos do Grêmio Normalizados no Ranking CBF
score_p = scale(dadosGremio$PontosCBF, center = T)
fig <- plot_ly(dadosGremio, x = ~X, y = score_p, name = 'trace 0', type = 'scatter', mode = 'lines')
fig <- fig %>% layout(title = "Pontos do Grêmio Normalizados Ranking CBF",
xaxis = list(title = "Anos"),
yaxis = list (title = "Tendencia"))
fig
Lugar do Grêmio no Ranking CBF
fig <- plot_ly(dadosGremio, x = ~X, y = dadosGremio$RankingCBF, name = 'trace 0', type = 'scatter', mode = 'lines')
fig <- fig %>% layout(title = "Lugar do Grêmio no Ranking CBF",
xaxis = list(title = "Anos"),
yaxis = list (title = "Lugar"))
fig
Lugar do Grêmio Normalizados Ranking CBF
score_p = scale(dadosGremio$RankingCBF, center = T)
fig <- plot_ly(dadosGremio, x = ~X, y = score_p, name = 'trace 0', type = 'scatter', mode = 'lines')
fig <- fig %>% layout(title = "Lugar do Grêmio Normalizados Ranking CBF",
xaxis = list(title = "Anos"),
yaxis = list (title = "Tendencia"))
fig
Titulos No Ano do Grêmio
score_p = scale(dadosGremio$RankingCBF, center = T)
fig <- plot_ly(dadosGremio, x = ~X, y = dadosGremio$TitulosNoAno, name = 'trace 0', type = 'scatter', mode = 'lines')
fig <- fig %>% layout(title = "Titulos do Grêmio no Brasileirão",
xaxis = list(title = "Anos"),
yaxis = list (title = "Titulos"))
fig
Coeficiente de Relação: Usamos o “cor” em R, por padrão no metodo de Peterson. Ele vai nos retornar uma pontuação sobre a correlação entre os dois dados inseridos nele, por exemplo:
score_pCBF = scale(dadosGremio$PontosCBF, center = T)
score_pBR = scale(dadosGremio$PontosBr, center = T)
print(cor(score_pCBF,score_pBR))
## [,1]
## [1,] -0.2887195
Como o esperado notamos que os Pontos da CBF e Pontos do Brasileirão tem uma relação baixa, praticamente Nula.
score_pCBF = scale(dadosGremio$PontosCBF, center = T)
score_pBR = scale(dadosGremio$PontosBr, center = T)
fig <- plot_ly(dadosGremio, x = ~X, y = ~score_pCBF, name = 'Pontos CBF', type = 'scatter', mode = 'lines')
fig <- fig %>% add_trace(y = ~score_pBR, name = 'Pontos Brasileirão', mode = 'lines+markers')
fig <- fig %>% layout(title = "Relação normalizada Pontos CBF x Pontos Brasileirão",
xaxis = list(title = "Anos"),
yaxis = list (title = "Pontos"))
fig
Irei normalizar todos as variavéis e usar a partir daqui para facilitar o trabalho:
score_pCBF = scale(dadosGremio$PontosCBF, center = T)
score_pBR = scale(dadosGremio$PontosBr, center = T)
score_Tit = scale(dadosGremio$TitulosNoAno, center = T)
score_ValorDoTime = scale(dadosGremio$ValorDoTimeEuroMi, center = T)
print(cor(score_pCBF,score_pBR))
## [,1]
## [1,] -0.2887195
Será que o preço do elenco afeta o desempenho do time? Primeiro a correlação:
sprintf("Pontos CBF e valor do time: %s",cor(score_pCBF,score_ValorDoTime))
## [1] "Pontos CBF e valor do time: 0.31710407774005"
sprintf("Pontos Brasileirão e valor do time: %s",cor(score_pBR,score_ValorDoTime))
## [1] "Pontos Brasileirão e valor do time: -0.391013542233749"
sprintf("Titulos e valor do time: %s",cor(score_Tit,score_ValorDoTime))
## [1] "Titulos e valor do time: 0.554542023978298"
Resultados interessantes, talvez o valor do time tenha relação com o número de títulos
score_pCBF = scale(dadosGremio$PontosCBF, center = T)
score_pBR = scale(dadosGremio$PontosBr, center = T)
fig <- plot_ly(dadosGremio, x = ~X, y = ~score_ValorDoTime, name = 'Valor do time', type = 'scatter', mode = 'lines')
fig <- fig %>% add_trace(y = ~score_pBR, name = 'Pontos Brasileirão', mode = 'lines+markers')
fig <- fig %>% add_trace(y = ~score_pCBF, name = 'Pontos CBF', mode = 'lines+markers')
fig <- fig %>% add_trace(y = score_Tit, name = 'Número de títulos', mode = 'lines+markers')
fig <- fig %>% layout(title = "Relações",
xaxis = list(title = "Anos"),
yaxis = list (title = "Pontos"))
fig
Como o esperado, há uma relação, ainda que não tão forte, entre o preço do elenco do ano e o número de titulos, como achamos com a correlação de Pearson : 0.554542
Ou seja: O preço do Elenco AFETA o Grêmio
Será que política Brasileira afeta o Grêmio? Vamos começar com os filiados de alguns partidos desde 2012: PT, PSDB, PL, PCB e MDB, números a partir de Janeiro retirados do: https://www.tse.jus.br/eleitor/estatisticas-de-eleitorado/filiados
PTFilhados <- c(1523955,1550671,1588308,1586357,1589270,1585746,1585434,1589943,1475301,1544322,1607025)
PSDBFilhados <- c(1352831,1354704,1350434,1348537,1409120,1445992,1455773,1457534,1365550,1374981,1354405)
PCBFilhados <- c(15914,15579,15274,15138,14848,14824,14751,14680,12922,12784,12649)
Será que há correlação entre número de filiados desses partidos e o desempenho do Grêmio?
PTFilhados <- scale(PTFilhados, center = T)
sprintf("Filiados do PT e sua relação com:")
## [1] "Filiados do PT e sua relação com:"
sprintf("Pontos CBF %s",cor(score_pCBF,PTFilhados))
## [1] "Pontos CBF 0.315860193670161"
sprintf("Pontos Brasileirão %s",cor(score_pBR,PTFilhados))
## [1] "Pontos Brasileirão 0.298678849765549"
sprintf("Titulos : %s",cor(score_Tit,PTFilhados))
## [1] "Titulos : 0.135888995328369"
sprintf("Valor do time: %s",cor(score_ValorDoTime,PTFilhados))
## [1] "Valor do time: -0.474777364898577"
Aparentemente o numero de filiados do PT não tem relação com o Grêmio, o mais perto seria o inverso com o valor do Elenco, porém não chega a 50% de correlação.
PSDBFilhados <- scale(PSDBFilhados, center = T)
sprintf("Filiados do PSDB e sua relação com:")
## [1] "Filiados do PSDB e sua relação com:"
sprintf("Pontos CBF %s",cor(score_pCBF,PSDBFilhados))
## [1] "Pontos CBF 0.292133119505457"
sprintf("Pontos Brasileirão %s",cor(score_pBR,PSDBFilhados))
## [1] "Pontos Brasileirão -0.161601717483398"
sprintf("Titulos : %s",cor(score_Tit,PSDBFilhados))
## [1] "Titulos : 0.732753820662196"
sprintf("Valor do time: %s",cor(score_ValorDoTime,PSDBFilhados))
## [1] "Valor do time: 0.230974825425114"
Aparentemente o numero de filiados do PSDB tem uma estranha relação de 73% com o número de titulos, vamos ver o gráfico normalizado:
fig <- plot_ly(dadosGremio, x = ~X, y = score_Tit, name = 'Titulos do ano Normalizado', type = 'scatter', mode = 'lines')
fig <- fig %>% add_trace(y = PSDBFilhados, name = 'Filiados PSDB normalizado', mode = 'lines+markers')
fig
PCBFilhados <- scale(PCBFilhados, center = T)
sprintf("Filiados do PCB e sua relação com:")
## [1] "Filiados do PCB e sua relação com:"
sprintf("Pontos CBF %s",cor(score_pCBF,PCBFilhados))
## [1] "Pontos CBF -0.428227073310286"
sprintf("Pontos Brasileirão %s",cor(score_pBR,PCBFilhados))
## [1] "Pontos Brasileirão 0.119267572577871"
sprintf("Titulos : %s",cor(score_Tit,PCBFilhados))
## [1] "Titulos : -0.494032971467415"
sprintf("Valor do time: %s",cor(score_ValorDoTime,PCBFilhados))
## [1] "Valor do time: -0.532706023310499"
Aparentemente o numero de filiados do PCB não tem relação com o Grêmio, o mais perto seria o inverso com o valor do Elenco assim como o PT, com um pouco mais de 50%, vamos plotar apenas para visualizar.
fig <- plot_ly(dadosGremio, x = ~X, y = score_ValorDoTime, name = 'Valor do Time', type = 'scatter', mode = 'lines')
fig <- fig %>% add_trace(y = PSDBFilhados, name = 'Filiados PCB normalizado', mode = 'lines+markers')
fig
Conclusão: Aparentemente o Grêmio não é afetado pelos 3 partidos. Não afeta o Grêmio
Vamos tentar alguns dados econômicos, a começar com Renda média Mensal, via “Rendimento real médio mensal per capita nos domicílios com televisão sem acesso a serviço de televisão por assinatura em Reais” daqui: https://sidra.ibge.gov.br/tabela/7403
Infelizmente os dados tem que ser a partir de 2016
rendaPerCapita <- c(976,1033,1065,1121,1121,1106)
dadosGremioRecorte2016 <- dadosGremio[5:10, ]
sprintf("Pontos CBF e Renda: %s",cor(dadosGremioRecorte2016$PontosCBF,rendaPerCapita))
## [1] "Pontos CBF e Renda: 0.796284173078085"
sprintf("Pontos Brasileirão e Renda: %s",cor(dadosGremioRecorte2016$PontosBr,rendaPerCapita))
## [1] "Pontos Brasileirão e Renda: 0.059495772120635"
sprintf("Titulos e Renda: %s",cor(dadosGremioRecorte2016$TitulosNoAno,rendaPerCapita))
## [1] "Titulos e Renda: -0.0451726943713453"
sprintf("Valor do time e Renda: %s",cor(dadosGremioRecorte2016$ValorDoTimeEuroMi,rendaPerCapita))
## [1] "Valor do time e Renda: 0.733287845076902"
Interessante parece haver relação entre os pontos do Ranking da CBF e a Renda com 79% Além do valor do time com 73%, vamos plotar:
fig <- plot_ly(dadosGremioRecorte2016, x = ~X, y = scale(rendaPerCapita, center = T), name = 'Renda per Capita', type = 'scatter', mode = 'lines')
fig <- fig %>% add_trace(y = scale(dadosGremioRecorte2016$PontosCBF, center = T), name = 'Pontos CBF', mode = 'lines+')
fig <- fig %>% add_trace(y = scale(dadosGremioRecorte2016$ValorDoTimeEuroMi), name = 'Valor do Time', mode = 'lines')
fig
Fantástico, descobrimos que o Rendimento real médio mensal per capita nos domicílios com televisão sem acesso a serviço de televisão por assinatura em Reais afeta o Grêmio desde 2016.
https://sidra.ibge.gov.br/tabela/6784#/n1/all/v/9812/p/all/d/v9812%202/l/v,,t+p/resultado
Infelizmente os dados tem que ser a partir de 2016
rendaPerCapita <- c(976,1033,1065,1121,1121,1106)
dadosGremioRecorte2016 <- dadosGremio[5:10, ]
sprintf("Pontos CBF e Renda: %s",cor(dadosGremioRecorte2016$PontosCBF,rendaPerCapita))
## [1] "Pontos CBF e Renda: 0.796284173078085"
sprintf("Pontos Brasileirão e Renda: %s",cor(dadosGremioRecorte2016$PontosBr,rendaPerCapita))
## [1] "Pontos Brasileirão e Renda: 0.059495772120635"
sprintf("Titulos e Renda: %s",cor(dadosGremioRecorte2016$TitulosNoAno,rendaPerCapita))
## [1] "Titulos e Renda: -0.0451726943713453"
sprintf("Valor do time e Renda: %s",cor(dadosGremioRecorte2016$ValorDoTimeEuroMi,rendaPerCapita))
## [1] "Valor do time e Renda: 0.733287845076902"
Interessante parece haver relação entre os pontos do Ranking da CBF e a Renda com 79% Além do valor do time com 73%, vamos plotar:
fig <- plot_ly(dadosGremioRecorte2016, x = ~X, y = scale(rendaPerCapita, center = T), name = 'Renda per Capita', type = 'scatter', mode = 'lines')
fig <- fig %>% add_trace(y = scale(dadosGremioRecorte2016$PontosCBF, center = T), name = 'Pontos CBF', mode = 'lines+')
fig <- fig %>% add_trace(y = scale(dadosGremioRecorte2016$ValorDoTimeEuroMi), name = 'Valor do Time', mode = 'lines')
fig
Fantástico, descobrimos que o Rendimento real médio mensal per capita nos domicílios com televisão sem acesso a serviço de televisão por assinatura em Reais afeta o Grêmio desde 2016.